package com.lxy.cxcyxmmsbackend.sys.mapper;

import com.lxy.cxcyxmmsbackend.sys.entity.QxglDz;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * Mapper 接口
 * </p>
 *
 * @author 刘新颖
 * @since 2024-01-07
 */
public interface QxglDzMapper extends BaseMapper<QxglDz> {
    /**
     * 查询菜单下拥有的动作
     *
     * @param dzSscd
     * @return List<QxglDz>
     * @author lxy
     * @date 2024/1/7
     **/
    List<QxglDz> selectQxglDzByCdBh(@Param("dzSscd") String dzSscd);

    /**
     * 查询菜单下拥有的授权动作
     *
     * @param dzSscd
     * @return List<QxglDz>
     * @author lxy
     * @date 2024/1/7
     **/
    List<QxglDz> selectQxglDzByCdBhPer(@Param("dzSscd") String dzSscd);

    /**
     * 查询菜单下拥有的普通动作
     *
     * @param dzSscd
     * @return List<QxglDz>
     * @author lxy
     * @date 2024/1/7
     **/
    List<QxglDz> selectQxglDzByCdBhCom(@Param("dzSscd") String dzSscd);

    /**
     * 查询所有动作id
     *
     * @param
     * @return List<String>
     * @author lxy
     * @date 2024/1/7
     **/
    List<String> selectAllAid();

    /**
     * 查询所有接口
     *
     * @param
     * @return List<QxglRole>
     * @author lxy
     * @date 2024/1/7
     **/
    List<String> selectAllApi();

    /**
     * 根据用户id查询动作
     *
     * @param userBh
     * @return List<String>
     * @author lxy
     * @date 2024/1/7
     **/
    List<String> selectApiByUid(@Param("userBh") String userBh);

    /**
     * 根据编号查询动作
     *
     * @param dzBh
     * @return QxglDz
     * @author lxy
     * @date 2024/1/7
     **/
    QxglDz selectActionById(@Param("dzBh") String dzBh);

    /**
     * 新增动作
     *
     * @param qxglDz
     * @return int
     * @author lxy
     * @date 2024/1/7
     **/
    int insertQxglDz(QxglDz qxglDz);

    /**
     * 修改动作
     *
     * @param qxglDz
     * @return int
     * @author lxy
     * @date 2024/1/7
     **/
    int updateQxglDz(QxglDz qxglDz);

    /**
     * 删除动作
     *
     * @param dzBh
     * @return int
     * @author lxy
     * @date 2024/1/7
     **/
    int deleteQxglDz(@Param("dzBh") String dzBh);

    /**
     * 根据菜单删除动作
     *
     * @param dzSscd
     * @return int
     * @author lxy
     * @date 2024/1/7
     **/
    int deleteQxglDzByMId(@Param("dzSscd") String dzSscd);
}
